package ups.proyecto.fin.hotel1.Bean;
/*
 * Hotelre1Bean
 *
 * version 1.0
 *
 *  19/02/2015
 *
 * Copyright
 */
import java.util.List;
import java.util.logging.Level;
import java.util.logging.Logger;

import javax.annotation.PostConstruct;
import javax.faces.bean.ManagedBean;
import javax.inject.Inject;

import ups.proyecto.fin.hotel1.DAO.*;
import ups.proyecto.fin.hotel1.entidad.*;
import ups.proyecto.fin.hotel1.interfaz.*;

/**
 * The Managed Bean class for the hotelre1Bean as controller
 * @version 1.0
 * @author Ulloa Arias
 * 
 */
@ManagedBean
public class Hotelre1Bean {

		@Inject 
		private Logger log;
		
		/**
		 * @Inject on the data object Hotelre1Local
		 */
		@Inject
		private Hotelre1Local hDAO;
		
		
		
		/**
		 * Conjunto de Bean Propierties, que permiten enlazar la pagina JSF con la clase java
		 * JavaBeans
		 */	
		
		private List<Hotelres1> listado;
		
		private Integer codigo;
		
		private Hotelres1 Hotelres1Encontrada;
		
		private Hotelres1 newHotelres1;
		
		private Integer codigoDetalle;
		
		/**
		 * Método que se ejecuta posterior a la creación(instancia) del JavaBean 
		 */
		@PostConstruct
		public void init(){
			newHotelres1 = new Hotelres1();
			Hotelres1Encontrada = new Hotelres1();
			//loadHotelres1();
		}
		
		/**
		 * 
		 * @get and @set attributes of the Managed Bean Hotelre1Bean
		 */

		/**
		 * getCodigoDetalle
		 * @return codigoDetalle
		 */
		public Integer getCodigoDetalle() {
			return codigoDetalle;
		}

		/**
		 * getHotelres1Encontrada
		 * @return Hotelres1Encontrada
		 */
		public Hotelres1 getHotelres1Encontrada() {
			return Hotelres1Encontrada;
		}

		/**
		 * setHotelres1Encontrada
		 * @param Hotelres1Encontrada
		 */
		public void setHotelres1Encontrada(Hotelres1 Hotelres1Encontrada) {
			this.Hotelres1Encontrada = Hotelres1Encontrada;
		}

		/**
		 * getCodigo
		 * @return codigo
		 */
		public Integer getCodigo() {
			return codigo;
		}

		/**
		 * setCodigo
		 * @param codigo
		 */
		public void setCodigo(Integer codigo) {
			this.codigo = codigo;
		}

		/**
		 * getLog
		 * @return log
		 */
		public Logger getLog() {
			return log;
		}


		/**
		 * setLog
		 * @param log
		 */
		public void setLog(Logger log) {
			this.log = log;
		}

		/**
		 * sethDAO
		 * @param hDAO
		 */
		public void sethDAO(Hotelre1Local hDAO) {
			this.hDAO = hDAO;
		}

		/**
		 * setcDAO
		 * @param hDAO
		 */
		public void setcDAO(Hotelre1DAO hDAO){
			this.hDAO = (Hotelre1Local) hDAO;
		}

		/**
		 * sethDAO
		 * @param hDAO
		 */
		public void sethDAO(Hotelre1DAO hDAO) {
			this.hDAO = (Hotelre1Local) hDAO;
		}

		/**
		 * setNewHotelres1
		 * @param newHotelres1
		 */
		public void setNewHotelres1(Hotelres1 newHotelres1) {
			this.newHotelres1 = newHotelres1;
		}

		/**
		 * getListado
		 * @return List<Hotelres1>
		 */
		public List<Hotelres1> getListado() {
			return listado;
		}
		
		/**
		 * setListado
		 * @param listado
		 */
		public void setListado(List<Hotelres1> listado) {
			this.listado = listado;
		}
		
		/**
		 * getNewHotelres1
		 * @return newHotelres1
		 */
		public Hotelres1 getNewHotelres1() {
			return newHotelres1;
		}
				
						
		/**
		 * ActionController, procedimiento llamado desde vista, atado al boton guardar del JSF
		 * @return		Regla de navegacion,
		 */
		public String guardar(){
			log.log(Level.INFO, "Graduando Informacion en la BD");
			Hotelres1 raz = new Hotelres1();
			raz = hDAO.read(newHotelres1.getHreId());	
			hDAO.insert(newHotelres1);
			init();
			return "listar";
		}
		
		/**
		 * ActionController, procedimiento llamado desde vista, atado al boton buscar del JSF
		 * @return		Regla de navegación
		 */
		
		
		public String buscarHotelres1(){
			Hotelres1Encontrada= hDAO.read(codigo);
			return null;
		}
				
		public String buscarLink(){
			return "BuscarHotelres1";
		}
		
		
		
	}

